The only difference between the _****_ssss_tttt_aaaa_tttt and the _****_ssss_tttt_aaaa_tttt_6666_4444 calls is that the
_****_ssss_tttt_aaaa_tttt_6666_4444 calls return a _ssss_tttt_aaaa_tttt_6666_4444 structure, with three fields increased in
size to allow for larger files and filesystems: _ssss_tttt______iiii_nnnn_oooo, _ssss_tttt______ssss_iiii_zzzz_eeee, and
_ssss_tttt______bbbb_llll_oooo_cccc_kkkk_ssss are all 64-bit values.
NOTE: All programs compiled either -n32 or -64 get the _ssss_tttt_aaaa_tttt_6666_4444 versions
of the stat system call, even when calling _ssss_tttt_aaaa_tttt. Only programs compiled
-o32 get the version with the smaller field sizes, for binary
compatibility.
_p_a_t_h points to a path name naming a file. Read, write, or execute
permission of the named file is not required, but all directories listed
in the path name leading to the file must be searchable. _ssss_tttt_aaaa_tttt obtains
information about the named file.
_llll_ssss_tttt_aaaa_tttt obtains file attributes similar to _ssss_tttt_aaaa_tttt, except when the named file
is a symbolic link; in that case _llll_ssss_tttt_aaaa_tttt returns information about the
link, while _ssss_tttt_aaaa_tttt returns information about the file the link references.
_ffff_ssss_tttt_aaaa_tttt obtains information about an open file known by the file descriptor
_f_i_l_d_e_s, obtained from a successful _cccc_rrrr_eeee_aaaa_tttt, _oooo_pppp_eeee_nnnn, _dddd_uuuu_pppp, _ffff_cccc_nnnn_tttt_llll, _pppp_iiii_pppp_eeee, or
_iiii_oooo_cccc_tttt_llll system call.
_b_u_f is a pointer to a _ssss_tttt_aaaa_tttt structure into which information is placed
concerning the file.
The contents of the structure pointed to by _b_u_f include the following
_ssss_tttt______mmmm_oooo_dddd_eeee The mode of the file as described in _mmmm_kkkk_nnnn_oooo_dddd(2). In addition to
the modes described in _mmmm_kkkk_nnnn_oooo_dddd(2), the mode of a file may also be
S_IFLNK if the file is a symbolic link. (Note that S_IFLNK may
only be returned by _llll_ssss_tttt_aaaa_tttt.) The various macros in _ssss_yyyy_ssss_////_ssss_tttt_aaaa_tttt_...._hhhh
should be used to determine if there is a type match, since the
types are not a bit field. For example, you should use
_SSSS______IIII_SSSS_DDDD_IIII_RRRR_((((_ssss_tttt_...._ssss_tttt______mmmm_oooo_dddd_eeee_)))) rather than _((((_ssss_tttt_...._ssss_tttt______mmmm_oooo_dddd_eeee_&&&&_SSSS______IIII_FFFF_DDDD_IIII_RRRR_)))).
_ssss_tttt______iiii_nnnn_oooo Except for lofs file systems this field uniquely identifies the
file in a given file system and the pair _ssss_tttt______iiii_nnnn_oooo and _ssss_tttt______dddd_eeee_vvvv
uniquely identify regular files and directories. For regular
files and directories accessed via an "lofs" file system, the
value of this field is obtained from the underlying file
system, and the _ssss_tttt______rrrr_dddd_eeee_vvvv field must also be used to identify
uniqueness.
_ssss_tttt______dddd_eeee_vvvv Except for lofs file systems this field uniquely identifies the
file system that contains the file. Beware that this is still
true for NFS file systems exported using the -nohide option,
which may not appear in /etc/mtab. [See _eeee_xxxx_pppp_oooo_rrrr_tttt_ssss(4).] Its value
may be used as input to the _uuuu_ssss_tttt_aaaa_tttt system call to determine more
information about this file system. No other meaning is
associated with this value. For regular files and directories
accessed via an "lofs" file system, the value of this field is
obtained from the underlying file system, and the _ssss_tttt______rrrr_dddd_eeee_vvvv field
must also be used to identify uniqueness.
_ssss_tttt______rrrr_dddd_eeee_vvvv This field should be used only by administrative commands. It
is valid only for block special, character special, and files
and directories accessed via "lofs" file systems. It only has
meaning on the system where the file was configured.
_ssss_tttt______nnnn_llll_iiii_nnnn_kkkk This field should be used only by administrative commands.
_ssss_tttt______uuuu_iiii_dddd The user ID of the file's owner.
_ssss_tttt______gggg_iiii_dddd The group ID of the file's group.
_ssss_tttt______ssss_iiii_zzzz_eeee For regular files, this is the address of the end of the file.
If the file's size is larger than will fit in the _ssss_tttt______ssss_iiii_zzzz_eeee field
(2^31 - 1) then the value (2^31 - 1) is returned there instead.
See also _ssss_tttt_aaaa_tttt_6666_4444(2). For block special or character special,
this is not defined. See also _pppp_iiii_pppp_eeee(2).
_ssss_tttt______aaaa_tttt_iiii_mmmm Time when file data was last accessed. Changed by the
following system calls: _cccc_rrrr_eeee_aaaa_tttt, _mmmm_kkkk_nnnn_oooo_dddd, _pppp_iiii_pppp_eeee, _uuuu_tttt_iiii_mmmm_eeee, and _rrrr_eeee_aaaa_dddd.
The seconds portion of _ssss_tttt______aaaa_tttt_iiii_mmmm is available as _ssss_tttt______aaaa_tttt_iiii_mmmm_eeee.
_ssss_tttt______mmmm_tttt_iiii_mmmm Time when data was last modified. Changed by the following
system calls: _cccc_rrrr_eeee_aaaa_tttt, _mmmm_kkkk_nnnn_oooo_dddd, _pppp_iiii_pppp_eeee, _uuuu_tttt_iiii_mmmm_eeee, and _wwww_rrrr_iiii_tttt_eeee. The
seconds portion of _ssss_tttt______mmmm_tttt_iiii_mmmm is available as _ssss_tttt______mmmm_tttt_iiii_mmmm_eeee.
_ssss_tttt______cccc_tttt_iiii_mmmm Time when file status was last changed. Changed by the
following system calls: _cccc_hhhh_mmmm_oooo_dddd, _cccc_hhhh_oooo_wwww_nnnn, _cccc_rrrr_eeee_aaaa_tttt, _llll_iiii_nnnn_kkkk, _mmmm_kkkk_nnnn_oooo_dddd,
_pppp_iiii_pppp_eeee, _uuuu_nnnn_llll_iiii_nnnn_kkkk, _uuuu_tttt_iiii_mmmm_eeee, and _wwww_rrrr_iiii_tttt_eeee. The seconds portion of _ssss_tttt______cccc_tttt_iiii_mmmm
is available as _ssss_tttt______cccc_tttt_iiii_mmmm_eeee.